// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
info: "CharacterEscapeSequnce :: NonEscapeSequence"
es5id: 7.8.4_A4.2_T2
description: "NonEscapeSequence :: ENGLISH CAPITAL ALPHABET"
---*/

//CHECK#A-Z
function Test() {
    if ("A" !== "\A") {
      throw new Test262Error('#A');
    }

    if ("B" !== "\B") {
      throw new Test262Error('#B');
    }

    if ("C" !== "\C") {
      throw new Test262Error('#C');
    }

    if ("D" !== "\D") {
      throw new Test262Error('#D');
    }

    if ("E" !== "\E") {
      throw new Test262Error('#E');
    }

    if ("F" !== "\F") {
      throw new Test262Error('#F');
    }

    if ("G" !== "\G") {
      throw new Test262Error('#G');
    }

    if ("H" !== "\H") {
      throw new Test262Error('#H');
    }

    if ("I" !== "\I") {
      throw new Test262Error('#I');
    }

    if ("J" !== "\J") {
      throw new Test262Error('#J');
    }

    if ("K" !== "\K") {
      throw new Test262Error('#K');
    }

    if ("L" !== "\L") {
      throw new Test262Error('#L');
    }

    if ("M" !== "\M") {
      throw new Test262Error('#M');
    }

    if ("N" !== "\N") {
      throw new Test262Error('#N');
    }

    if ("O" !== "\O") {
      throw new Test262Error('#O');
    }

    if ("P" !== "\P") {
      throw new Test262Error('#P');
    }

    if ("Q" !== "\Q") {
      throw new Test262Error('#Q');
    }

    if ("R" !== "\R") {
      throw new Test262Error('#R');
    }

    if ("S" !== "\S") {
      throw new Test262Error('#S');
    }

    if ("T" !== "\T") {
      throw new Test262Error('#T');
    }

    if ("U" !== "\U") {
      throw new Test262Error('#U');
    }

    if ("V" !== "\V") {
      throw new Test262Error('#V');
    }

    if ("W" !== "\W") {
      throw new Test262Error('#W');
    }

    if ("X" !== "\X") {
      throw new Test262Error('#X');
    }

    if ("Y" !== "\Y") {
      throw new Test262Error('#Y');
    }

    if ("Z" !== "\Z") {
      throw new Test262Error('#Z');
    }
}

// preheat
const NUMBER_OF_PREHEAT = 1;
for (let i = 0; i < NUMBER_OF_PREHEAT; i++) {
    Test();
}

ArkTools.jitCompileAsync(Test);
assert.sameValue(ArkTools.waitJitCompileFinish(Test), true, '[JIT] JIT disabled.');

// test
const NUMBER_OF_TEST = 1; // or 2
for (let i = 0; i < NUMBER_OF_PREHEAT; i++) {
    Test();
}
